.table-container {
  overflow-y: auto;
  overflow-x: hidden;
  background-color: #fff;
  border: 1px solid #000;
  margin: 20px 4px;

  .table-header {
    display: flex;
    border-bottom: 1px solid #000;
    min-height: 54px;

    .header-type-cell {
      overflow: hidden;
      position: relative;
      flex: 1;
      border-right: 1px solid #000;
      font-size: 12px;
      font-weight: bold;

      &::before {
        content: '';
        position: absolute;
        top: 0;
        left: 0;
        width: 100%;
        height: 100%;
        background: linear-gradient(
          to bottom left,
          transparent 49%,
          #000 50%,
          #000 51%,
          transparent 52%
        );
        pointer-events: none; /* 避免干扰交互 */
      }

      .text-top-right {
        position: absolute;
        top: 4px;
        right: 4px;
        z-index: 1; /* 确保文字在对角线之上 */
      }

      .text-bottom-left {
        position: absolute;
        bottom: 4px;
        left: 4px;
        z-index: 1; /* 确保文字在对角线之上 */
      }
    }

    .header-cell {
      display: flex;
      flex-direction: column;
      justify-content: center;
      align-items: center;
      flex: 1;
      border-right: 1px solid #000;
      white-space: pre-wrap;
      word-break: break-all;
      word-wrap: break-word;
      font-size: 12px;
      font-weight: bold;

      &-last {
        border-right: 0;
      }
    }
  }

  .table-row {
    display: flex;
    border-bottom: 1px solid #000;
    min-height: 46px;

    &-last {
      border-bottom: 0;
    }

    .cell {
      display: flex;
      justify-content: center;
      align-items: center;
      flex: 1;
      font-size: 12px;
      border-right: 1px solid #000;
      white-space: pre-wrap;
      word-break: break-all;
      word-wrap: break-word;

      &-last {
        border-right: 0;
      }
    }

    .merge-cell-box {
      display: flex;
      flex-direction: column;
      flex: 1;
      display: flex;
      border-right: 1px solid #000;

      &-last {
        border-right: 0;
      }

      .merge-cell {
        display: flex;
        justify-content: center;
        align-items: center;
        flex: 1;
        font-size: 12px;
        white-space: pre-wrap;
        word-break: break-all;
        word-wrap: break-word;
        border-bottom: 1px solid black;

        &-last {
          border-bottom: 0;
        }
      }
    }
  }
}
